package org.hyou.demos.msg.seri.msg;

import org.msgpack.annotation.Message;

/**
 * <pre>
 * B.3.2.3.5 终端注册
 * 消息ID：0X0100
 * 
 * 客户端请求消息体：终端注册（0x0100）
 * 计时终端安装到车辆上时，使用此消息通知计时平台
 * </pre>
 * 
 * @author FengChangshuo
 * @version 1.0.0 2017年1月19日 下午3:23:49 created
 */
@Message
public class X0100ReqRegister extends Body {
    
    /**
     * serialVersionUID
     */
    private static final long serialVersionUID = 270855121852522817L;
    
    /**
     * 省域ID (WORD)
     * 标示终端安装车辆所在的省域，0 保留，由平台取默认值。
     * 省域ID 采用GB/T 2260 中规定的行政区划代码6 位中前2 位
     */
    private int provinceId;
    
    /**
     * 市县域ID (WORD)
     * 标示终端安装车辆所在的市域和县域，0 保留，由平台取默认值。
     * 市县域ID 采用GB/T 2260 中规定的行政区划代码6 位中后4 位
     */
    private int cityId;
    
    /**
     * 制造商ID (BYTE[5])
     * 5 个字节，终端制造商编码.
     * 目前定为“HZLYT”这5个字母的ASCII编码。
     */
    private String manufacturer;
    
    /**
     * 终端型号 (BYTE[20])
     * 20 个字节，此终端型号由制造商自行定义，位数不足20 位的后补“0X00”
     * 可以把我们序列号前缀放这里。例如9个字节的前缀C70DJRG41是有效的，其它全部0x00
     */
    private String model;
    
    /**
     * 计时终端出厂序列号 (BYTE[7])
     * 7 个字节，由大写字母和数字组成，此终端ID 由制造商自行定义，位数不足时，后补“0X00”
     * 把序列号的编号放这里，一般是4位有效（和产品出厂标签上的序列号一致）。例如0001234。
     */
    private String serialNumber;
    
    /**
     * IMEI (BYTE[15])
     * 国际移动设备标识，ASCII码
     */
    private String imei;
    
    /**
     * 车牌颜色 (BYTE)
     * 车牌颜色，按照JT/T415-2006 的5.4.12；
     * 未上牌时，取值为0
     */
    private int color;
    
    /**
     * 车辆标识 (STRING)
     * 车牌颜色为0 时，表示车辆VIN；
     * 否则，表示公安交通管理部门颁发的机动车号牌。
     * 一般设置为车牌号，后续业务需要使用。
     */
    private String licenseNum;
    
    /**
     * @return 省域ID,采用GB/T 2260 中规定的行政区划代码6 位中前2 位
     */
    public int getProvinceId() {
        return this.provinceId;
    }
    
    /**
     * @param provinceId 省域ID,采用GB/T 2260 中规定的行政区划代码6 位中前2 位
     */
    public void setProvinceId(int provinceId) {
        this.provinceId = provinceId;
    }
    
    /**
     * @return 市县域ID 采用GB/T 2260 中规定的行政区划代码6 位中后4 位
     */
    public int getCityId() {
        return this.cityId;
    }
    
    /**
     * @param cityId 市县域ID 采用GB/T 2260 中规定的行政区划代码6 位中后4 位
     */
    public void setCityId(int cityId) {
        this.cityId = cityId;
    }
    
    /**
     * @return 制造商ID
     */
    public String getManufacturer() {
        return this.manufacturer;
    }
    
    /**
     * @param manufacturer 制造商ID
     */
    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer;
    }
    
    /**
     * @return 终端型号
     */
    public String getModel() {
        return this.model;
    }
    
    /**
     * @param model 终端型号
     */
    public void setModel(String model) {
        this.model = model;
    }
    
    /**
     * @return 计时终端出厂序列号
     */
    public String getSerialNumber() {
        return this.serialNumber;
    }
    
    /**
     * @param serialNumber 计时终端出厂序列号
     */
    public void setSerialNumber(String serialNumber) {
        this.serialNumber = serialNumber;
    }
    
    /**
     * @return IMEI 国际移动设备标识，ASCII码
     */
    public String getImei() {
        return this.imei;
    }
    
    /**
     * @param imei IMEI 国际移动设备标识，ASCII码
     */
    public void setImei(String imei) {
        this.imei = imei;
    }
    
    /**
     * @return 车牌颜色，按照JT/T415-2006 的5.4.12；
     * @see com.myland.consts.LicensePlateColor
     */
    public int getColor() {
        return this.color;
    }
    
    /**
     * @param color 车牌颜色，按照JT/T415-2006 的5.4.12；
     * @see com.myland.consts.LicensePlateColor
     */
    public void setColor(int color) {
        this.color = color;
    }
    
    /**
     * @return 车辆标识,一般设置为车牌号
     */
    public String getLicenseNum() {
        return this.licenseNum;
    }
    
    /**
     * @param licenseNum 车辆标识,一般设置为车牌号
     */
    public void setLicenseNum(String licenseNum) {
        this.licenseNum = licenseNum;
    }
    
}
